﻿// 3588. 排列与二进制.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>


/*
https://www.acwing.com/problem/content/3591/

在组合数学中，我们学过排列数。

从 n个不同元素中取出 m（m<=n）个元素的所有排列的个数，叫做从 n中取 m的排列数，记为 p(n,m)。

具体计算方法为 p(n,m)=n(n−1)(n−2)……(n−m+1)=n!/(n−m)!
（规定 0!=1）。

当 n和 m不是很小时，这个排列数是比较大的数值，比如 p(10,5)=30240。

如果用二进制表示为 p(10,5)=30240=(111011000100000)b，也就是说，最后面有 5个零。

我们的问题就是，给定一个排列数，算出其二进制表示的后面有多少个连续的零。

输入格式
输入包含多组测试数据。

每组数据占一行，包含两个整数 n,m。

最后一行为 0 0，表示输入结束，无需处理。

输出格式
每组数据输出一行，一个结果，表示排列数 p(n,m)的二进制表示后面有多少个连续的零。

数据范围
1≤m≤n≤10000
,
输入最多包含 100组数据。

输入样例：
10 5
6 1
0 0
输出样例：
5
1
*/
int main()
{
    std::cout << "Hello World!\n";
}

 